package com.example.children.Util;

import java.util.UUID;



public class UUIDGenerator {

    // 使用 UUID 生成一个数字字符串，并去掉非数字字符
    public static String generateNumericUUID(int length) {
        // 生成 UUID
        UUID uuid = UUID.randomUUID();
        // 获取 UUID 的字符串表示（不包括 "-"）
        String uuidStr = uuid.toString().replace("-", "");

        // 只保留数字部分，避免字母字符
        StringBuilder numericUUID = new StringBuilder();

        // 遍历 UUID 字符串，保留数字字符
        for (char c : uuidStr.toCharArray()) {
            if (Character.isDigit(c)) {
                numericUUID.append(c);
            }
        }

        // 如果保留的数字长度不够，重新生成 UUID
        while (numericUUID.length() < length) {
            uuid = UUID.randomUUID();
            uuidStr = uuid.toString().replace("-", "");

            // 将新的 UUID 中的数字添加到 numericUUID
            for (char c : uuidStr.toCharArray()) {
                if (Character.isDigit(c)) {
                    numericUUID.append(c);
                }
            }
        }

        // 截取到所需的长度
        return numericUUID.substring(0, length);
    }

    public static void main(String[] args) {
        // 设置生成数字字符串的长度
        int length = 10; // 自定义需要的长度
        String numericUUID = generateNumericUUID(length);

        System.out.println("Generated numeric UUID: " + numericUUID);
    }
}


